This invention relates to a data processing method and a data processing device for carrying out data processing by dividing data of a finite length into a plurality of frequency bands, which are applied to an AV equipment, a communication equipment and a database device for carrying out coding for the purpose of audio and video data compression or decoding thereof.
As a coding/decoding method for the purpose of compressing digital signals, a subband coding is employed. This subband coding is adapted for carrying out band division of digital signals by using a filter for carrying out wavelet transform (hereinafter referred to as a wavelet transform filter) so as to compress the digital signals. Specifically, subband coding is adapted for carrying out filtering processing on input signals by using a plurality of filters having different passbands and then carrying out down-sampling at an interval corresponding to each frequency band, so as to carry out compression utilizing the bias of energy of an output signal from each filter.
Signal processing by band division utilizing subband coding and wavelet transform is described in, for example, Martin Vetari, xe2x80x9cWavelet Transform and Subband Codingxe2x80x9d, Electronic Telecommunication Society, Vol. 1.74, No. 12, pp.1275-1278, December 1991.
In general, wavelet transform is defined as a narrower term or improvement of subband coding. However, the following description of wavelet includes a technique using not only a wavelet transform filter but also a filter applied to subband coding.
FIG. 1 shows the basic structure for band division and synthesis by wavelet transform and inverse wavelet transform. In FIG. 1, a one-dimensional signal x[i] is used as an input.
A wavelet transform unit 100 shown in FIG. 1 divides an input signal x[i] into signals xaxe2x80x2[j], xbxe2x80x2[j], xcxe2x80x2[j] . . . of plural frequency bands (subbands). An inverse wavelet transform unit 200 synthesizes the signals xaxe2x80x2[j], xbxe2x80x2[j], xcxe2x80x2[j] . . . divided into subbands so as to restore an input signal xxe2x80x3[i]. A signal processor 300 carries out predetermined processing on data which has been divided into the frequency bands. For example, in the case where coding processing is to be carried out, quantization, variable length coding, transmission, variable length decoding, and inverse quantization are carried out.
Specifically, in the wavelet transform unit 100, analysis filters 111, 112, 113 . . . carry out filtering for band division. Then, down-sampling units 121, 122, 123 . . . carry out down-sampling for storing data at a given sampling interval Di (i=1, 2, 3 . . . ) while thinning the other data with respect to data arrays xa[j], xb[j], xc[j] . . . of the individual frequency bands filtered and divided by the analysis filters 111, 112, 113 . . . , thereby generating the signals xaxe2x80x2[j], xbxe2x80x2[j], xcxe2x80x2[j] . . . of the individual frequency bands.
On the other hand, in the inverse wavelet transform unit 200, up-sampling units 211, 212, 213 . . . insert an appropriate number of zeros between two adjacent data with respect to the signals xaxe2x80x2[j], xbxe2x80x2[j], xcxe2x80x2[j] . . . of the individual frequency bands inputted thereto. The number of zeros to be inserted is equal to the number of samples (Dixe2x88x921) of the data thinned by the corresponding down-sampling units 121, 122, 123 . . . Then, synthesis filters 221, 222, 223 . . . carry out filtering for interpolation with respect to data arrays xaxe2x80x3[j], xbxe2x80x3[j], xcxe2x80x3[j] . . . in which zero values are inserted. An adder 230 adds the data arrays xaxe2x80x3[j], xbxe2x80x3[j], xcxe2x80x3[j] . . . of the individual frequency bands interpolated by the synthesis filters 221, 222, 223 . . . so as to restore the input signal x[i] as the synthesis output signal xxe2x80x3[i].
An example where input data is divided into two subbands will now be described in detail. In this case, the two analysis filters 111, 112 in the wavelet transform unit 100 become a low-pass filter and a high-pass filter, respectively. These analysis low-pass filter 111 and analysis high-pass filter 112 divide the input signal x[i] into a low-frequency band signal XL[i] and a high-frequency band signal XH[i]. The down-sampling units 121, 122 carry out thinning for every sample with respect to each of the divided signals, as expressed by the following Equations (1) and (2).
XL[j]=XL[i],j=i/2xe2x80x83xe2x80x83Equation (1)
XH[j]=XH[i],j=i/2xe2x80x83xe2x80x83Equation (2)
In the inverse wavelet transform unit 200, first, the up-sampling units 211, 212 extend the sampling interval twice, and a sample having a zero value at the center position is inserted, as expressed by the following Equations (3) and (4).
XL[i]=XL[j]. . . i=2xc3x97j 0. . . i=2xc3x97j1xe2x80x83xe2x80x83Equation (3)
XH[i]=XH[j] . . . i=2xc3x97j 0. . . i=2xc3x97j+1xe2x80x83xe2x80x83Equation (4)
Then, the signals XL[i], XH[i] of the individual frequency bands obtained on up-sampling by the up-sampling units 211, 212 are supplied to the adder 230 through the synthesis low-pass filter 221 and the synthesis high-pass filter 222 corresponding to the analysis low-pass filter 111 and the analysis high-pass filter 112, respectively. The synthesis low-pass filter 221 and the synthesis high-pass filter 222 carry out interpolation on the output signals XL[i], XH[i] of the up-sampling units 211, 212. After that, the adder 230 adds the signals XL[i], XH[i] of the individual frequency bands, thereby restoring the input signal x[i] as the synthesis output signal xxe2x80x3[i].
The analysis low-pass filter 111 and the analysis high-pass filter 112 used in the wavelet transform unit 100, and the synthesis low-pass filter 221 and the synthesis high-pass filter 222 used in the inverse wavelet transform unit 200, are constituted to completely or proximately satisfy the relations of the following Equations (5) and (6).
H0(xe2x88x92z)F0(z)+H1(xe2x88x92z)F1(z)=0xe2x80x83xe2x80x83Equation (5)
H0(z)F0(z)+H1(z)F1(z)=2zxe2x88x92Lxe2x80x83xe2x80x83Equation (6)
In Equation s (5) and (6), H0(z), H1(z), F0(z) and F1(z) represent transfer functions of the analysis low-pass filter 111, the analysis high-pass filter 112, the synthesis low-pass filter 221 and the synthesis high-pass filter 222, respectively, and L is an arbitrary integer. Under this constraint, if input data has an infinite length, it is ensured that the synthesis output signal xxe2x80x3[i] from the adder 230 in the inverse wavelet transform unit 200 completely or proximately coincides with the input signal x[i].
Exemplary filter coefficients of the analysis low-pass filter 111 and the analysis high-pass filter 112 and filter coefficients of the corresponding synthesis low-pass filter 221 and synthesis high-pass filter 222 are shown in the following Table 1.
In the case where the above-described wavelet division/synthesis is used for coding, coding/decoding processing is carried out between the down-sampling units 121, 122 and the up-sampling units 211, 212.
The case where input data is divided into two subbands is explained above in detail. However, in coding for the purpose of compressing the data quantity, input data is divided into three or more subbands and each frequency band is recursively divided further, in order to carry out more efficient compression.
FIGS. 2 and 3 show the structures of an encoding device and a decoding device for a one-dimensional data array using wavelet transform.
In an encoding device 400 shown in FIG. 2, an analysis low-pass filter 411 and an analysis high-pass filter 412 on the first stage divide the input signal x[i] into a low-frequency band signal XL0[i] and a high-frequency band signal XH0[i]. The low-frequency band signal XL0[i] is supplied to a down-sampling unit 421, which carries out down-sampling similar to Equation (1). A low-frequency band signal XL0[j] obtained on down-sampling by the down-sampling unit 421 is further divided into a low-frequency band signal XL1[j] and a high-frequency band signal XH1[j] by an analysis low-pass filter 431 and an analysis high-pass filter 432 on the second stage. Then, the low-frequency band signal XL1[j] and the high-frequency band signal XH1[j] are supplied to down-sampling units 441, 442, respectively, which carry out down-sampling. On down-sampling by the down-sampling units 441, 442, a low-frequency band signal XL1[k] and a high-frequency band signal XH1[k] are generated.
On the other hand, the high-frequency band signal XH0[i] passed through the analysis high-pass filter 412 on the first stage is supplied to a down-sampling unit 422, which carries out down-sampling. Then, a high-frequency band signal XH0[j] obtained on down-sampling by the down-sampling unit 422 is inputted to a delay unit 434 for synchronizing with the low-frequency band signal.
The low-frequency band signal XL1[k] and the high-frequency band signal XH1[k] obtained on down-sampling by the down-sampling units 441, 442 and the high-frequency band signal XH0[j] delayed by the delay unit 434 are inputted to quantizers 451, 452 and 453, respectively, and quantized with corresponding quantization steps QL1, QH1 and QH0 as expressed by the following Equations (7), (8) and (9), respectively.
XL1xe2x80x2[k]=XL1[k]/QL1xe2x80x83xe2x80x83Equation (7)
XH1xe2x80x2[k]=XH1[k]/QH1xe2x80x83xe2x80x83Equation (8)
XH0xe2x80x2[j]=XH0[j]/QH0xe2x80x83xe2x80x83Equation (9)
Normally, for rounding of decimal fractions in calculating these Equations, decimal fractions not greater than 4 are rounded down. Quantized data XL1xe2x80x2[k], XH1xe2x80x2[k], XH0xe2x80x2[j] are inputted to a reversible coder/multiplexer 460, where reversible coding such as Huffman coding or arithmetic coding and multiplexing are carried out on the quantized data. The data are then transmitted to a decoding device 500 shown in FIG. 3 through a storage medium or a transmission line.
In the decoding device 500 shown in FIG. 3, first, an inverse multiplexer/reversible decoder 510 carries out decoding with respect to multiplexing and reversible coding carried out by the above-described encoding device 400, so as to restore the quantized data XL1xe2x80x2[k], XH1xe2x80x2[k], XH0xe2x80x2[j]. The quantized data XL1xe2x80x2[k], XH1xe2x80x2[k], XH0xe2x80x2[j] are inputted to different inverse quantizers 521, 522, 523, respectively. The inverse quantizers 521, 522, 523 carry out inverse transform of the quantization by the quantizers 451, 452, 453 of the encoding device 400, as expressed by the following Equations (10), (11) and (12).
XL1xe2x80x3[k]=XL1xe2x80x2[k]xc3x97QL1xe2x80x83xe2x80x83Equation (10)
XH1xe2x80x3[k]=XH1xe2x80x2[k]xc3x97QH1xe2x80x83xe2x80x83Equation (11)
XH0xe2x80x3[j]=XH0xe2x80x2[j]xc3x97QH0xe2x80x83xe2x80x83Equation (12)
Of output signals XL1xe2x80x3[k], XH1xe2x80x3[k], XH0xe2x80x3[j] of the inverse quantizers 521, 522, 523, the low-frequency band signal XL1xe2x80x3[k] and the high-frequency band signal XH1xe2x80x3[k] corresponding to the band division on the second stage of the encoding device 400 are inputted to up-sampling units 531 and 532, respectively, where up-sampling similar to Equations (3) and (4) is carried out on the signals.
The low-frequency band signal XL1xe2x80x3[j] and the high-frequency band signal XH1xe2x80x3[j] obtained on up-sampling by the up-sampling units 531, 532 are inputted to an adder 550 through a synthesis low-pass filter 541 and a synthesis high-pass filter 542 having the relations of Equations (5) and (6) with the analysis low-pass filter 431 and the analysis high-pass filter 432, respectively. Then, the output signals from the synthesis low-pass filter 541 and the synthesis high-pass filter 542 are added by the adder 550 so as to be a low-frequency band signal XL0xe2x80x3[j] corresponding to the low-frequency band signal XL0[j] obtained by the band division on the first stage of the encoding device 400.
The high-frequency band signal XH0xe2x80x3[j], obtained by the inverse quantizer 523 and corresponding to the band division on the first stage, is inputted to a delay unit 535 and is delayed by the delay unit 535 by the time necessary for reconstructing the low-frequency band signal XL0xe2x80x3[j] corresponding to the band division on the first stage.
The low-frequency band signal XL0xe2x80x3[j] obtained by the adder 550 and the high-frequency band signal XH0xe2x80x3[j] delayed by the delay unit 535 are supplied to up-sampling units 561, 562, respectively, where up-sampling is carried out on the signals. The frequency band signals XL0xe2x80x3[i], XH0xe2x80x3[i] obtained on up-sampling by the up-sampling units 561, 562 are filtered by a synthesis low-pass filter 571 and a synthesis high-pass filter 572, respectively, and are supplied to an adder 580. Then, these frequency band signals XL0xe2x80x3[i], XH0xe2x80x3[i] are added and synthesized by the adder 580, thereby generating a restored signal xxe2x80x3[i] corresponding to the input signal x[i].
In this case, as the analysis low-pass filters 411, 431, the analysis high-pass filters 412, 432, the synthesis low-pass filters 541, 571, and the synthesis high-pass filters 542, 572, the same combination is used for all division levels. However, different combinations of filters may be used for the respective levels.
FIGS. 4 and 5 show the structures of conventional examples of a two-dimensional picture encoding device and a two-dimensional picture decoding device using wavelet transform. An input signal x[i] is a data array obtained by scanning a two-dimensional picture in an order shown in FIG. 6.
In a two-dimensional picture encoding device 600 shown in FIG. 4, filtering is carried out four times in order to carry out band division in both horizontal and vertical directions on the picture, that is, low-pass filtering in the horizontal direction by analysis horizontal low-pass filters 611, 613, high-pass filtering in the horizontal direction by analysis horizontal high-pass filters 612, 614, low-pass filtering in the vertical direction by analysis vertical low-pass filters 641, 643, 645, 647, and high-pass filtering in the vertical direction by analysis vertical high-pass filters 642, 644, 646, 648.
Individual frequency band signals passed through the analysis horizontal low-pass filter 611 and the analysis horizontal high-pass filter 612 on the first stage are down-sampled by down-sampling units 621, 622, respectively, and then inputted to the analysis vertical low-pass filters 641, 643 and the analysis vertical high-pass filters 642, 644 on the second stage through memories 631, 632, respectively. A low-frequency band signal passed through the analysis vertical low-pass filter 641 is down-sampled by a down-sampling unit 651, and then inputted to the analysis horizontal low-pass filter 613 and the analysis horizontal high-pass filter 614 on the third stage. Individual frequency band signals passed through the analysis horizontal low-pass filter 613 and the analysis horizontal high-pass filter 614 are down-sampled by down-sampling units 623, 624, and then inputted to the analysis vertical low-pass filters 645, 647 and the analysis vertical high-pass filters 646, 648 on the fourth stage through memories 633, 634, respectively. The individual frequency band signals passed through the analysis vertical low-pass filters 645, 647 and the analysis vertical high-pass filters 646, 648 on the fourth stage are down-sampled by down-sampling units 655, 656, 657, 658, and then inputted to quantizers 661, 662, 663, 664, where the individual frequency band signals are quantized with corresponding quantization steps.
On the other hand, individual frequency band signals passed through the analysis vertical low-pass filter 643 and the analysis vertical high-pass filter 642, 644 are down-sampled by down-sampling units 653, 652, 654, respectively, and then passed through delay units 636, 635, 637 in order to be synchronized with the low-frequency band signal. The individual frequency band signals are then inputted to quantizers 666, 665, 667, respectively, where the signals are quantized with corresponding quantization steps.
Quantized data quantized by the quantizers 661 to 667 are inputted to a reversible coder/multiplexer 670, where reversible coding such as Huffman coding or arithmetic coding and multiplexing are carried out. The data thus obtained are transmitted to a decoding device 700 shown in FIG. 5 through a storage medium or a transmission line.
In the decoding device 700 shown in FIG. 5, first, an inverse multiplexer/reversible decoder 710 carries out decoding with respect to multiplexing and reversible coding carried out by the above-described encoding device 600, so as to restore the quantized data. These data are inputted to inverse quantizers 721 to 727, where inverse transform of the transform by quantizers 661 to 667 is carried out.
In this decoding device 700, filtering for interpolation corresponding to the encoding device 600 is carried out by memories 731 to 738, vertical up-sampling units 741 to 748, synthesis vertical low-pass filters 751, 753, 755, 757, synthesis vertical high-pass filters 752, 754, 756, 758, adders 761 to 766, horizontal up-sampling units 771 to 774, synthesis horizontal low-pass filters 781, 783, and synthesis horizontal high-pass filters 782, 784.
The vertical down-sampling units 651 to 658 in the encoding device 600 carry out down-sampling in the vertical direction on the picture, that is, thinning of each one line. On the contrary, the vertical up-sampling units 741 to 748 in the decoding device 700 carry out processing to insert one line having all zeros between inputted lines. The memories 731 to 738 are line memories for temporarily storing a necessary number of lines in order to carry out the above-described vertical processing on the incoming individual frequency band signals scanned in the horizontal direction.
Although, in this case, the same filters are used in the horizontal direction and in the vertical direction, different sets of filters may be used in the respective directions.
In the conventional wavelet transform and inverse wavelet transform, a method for extrapolation for filtering at the data terminal end position of each frequency band signal is experientially determined in most cases.
The analysis filters and the synthesis filters used for wavelet transform and inverse wavelet transform as described above are constituted to completely or proximately satisfy the conditions of reconstruction with respect to data of an infinite length. In actual application, however, since the data length is finite, the reconstruction conditions are not necessarily completely satisfied unless data necessary for convolution processing at the terminal end of a data array is appropriately extrapolated. Failure in the complete reconstruction conditions due to such inappropriate extrapolation does not cause any problem in the case where wavelet transform is used only for the purpose of analysis such as edge detection in picture processing, but causes serious problems in picture compression requiring analysis/synthesis processing.
Also, the influence of extrapolation appears only near the leading end and the trailing end of the data array, and its range is considered to be approximately half the number of taps of the filter used. Therefore, if the data length is sufficiently large with respect to the number of taps of the filter, the influence of extrapolation is small as a whole. However, in picture compression using wavelet transform, normally, division of subbands on the low-frequency side is normally repeated to generate a plurality of subbands. Therefore, as division proceeds, the data length to be convolved becomes relatively small with respect to the taps of the filter used, and the influence of extrapolation is dispersed in a broad range.
Thus, it is an object of the present invention to provide a data processing method and a data processing device which enable wavelet transform and inverse wavelet transform of high performance by using appropriate extrapolation.
It is another object of the present invention to provide a data processing method and a data processing device which enable accurate and appropriate judgment of extrapolation.
It is still another object of the present invention to provide a data processing method and a data processing device which enable realization of wavelet transform and inverse wavelet transform satisfying complete reconstruction conditions within a range of precision ensured by a filter used for wavelet transform and inverse wavelet transform even with respect to a data array of a finite length.
It is still another object of the present invention to provide a data processing method and a data processing device which enable resetting of conditions of a filter used, when an extrapolation method provided from outside is inappropriate.
It is still another object of the present invention to provide a data processing method and a data processing device which enable continuation of processing even when an extrapolation method provided from outside is inappropriate.
It is still another object of the present invention to provide a data processing method and a data processing device which enable selection of useful four loopback methods as extrapolation methods.
It is still another object of the present invention to provide a data processing method and a data processing device which enable easy discrimination as to whether complete reconstruction conditions are satisfied or not.
It is still another object of the present invention to provide a data processing method and a data processing device which enable extrapolation such that complete reconstruction conditions are satisfied even when extrapolation data is insufficient by one loopback operation because of the length of a filter used (the number of taps) which is large in comparison with the length of a data array.
It is still another object of the present invention to provide a data processing method and a data processing device which enable discrimination as to whether complete reconstruction conditions are satisfied or not when extrapolation data is insufficient by one loopback operation because of the length of a filter used (the number of taps) which is large in comparison with the length of a data array.
It is still another object of the present invention to provide a data processing method and a data processing device which enable discrimination of appropriate extrapolation by verifying all possible combinations of extrapolation methods at the leading end and the trailing end of a data array.
It is still another object of the present invention to provide a data processing method and a data processing device which enable resetting of conditions of a filter used, when there exists no appropriate combination of loopback methods at the leading end and the trailing end of a data array.
It is still another object of the present invention to provide a data processing method and a data processing device which enable continuation of processing even when there exists no appropriate combination of loopback methods at the leading end and the trailing end of a data array.
It is still another object of the present invention to provide a data processing method and a data processing device which enable extrapolation without causing discontinuity of data at terminal ends of a data array.
It is still another object of the present invention to provide a data processing method and a data processing device which enable accurate discrimination of an appropriate extrapolation method with respect to an analysis filter and prediction of appropriate extrapolation with respect to a corresponding synthesis filter.
It is still another object of the present invention to provide a data processing method and a data processing device which enable accurate discrimination as to whether complete reconstruction conditions are satisfied or not when extrapolation data is insufficient by one loopback operation because of the length of a filter used (the number of taps) which is large in comparison with the length of a data array.
It is still another object of the present invention to provide a data processing method and a data processing device which enable accurate prediction of an appropriate extrapolation method with respect to a synthesis filter.
It is still another object of the present invention to provide a data processing method and a data processing device which enable easy determination of an appropriate extrapolation method with respect to an analysis filter and a synthesis filter only from the number of taps of the filters, under conditions used at a high frequency.
It is still another object of the present invention to provide a data processing method and a data processing device which enable sat i s faction of complete reconstruction conditions even in the case where division of obtained subbands is repeated for a plurality of times and where a different analysis filter is used for each division.
It is still another object of the present invention to provide a data processing method and a data processing device which enable coding/decoding processing of high performance using wavelet transform and inverse wavelet transform.
It is a further object of the present invention to provide a data processing method and a data processing device which enable coding/decoding processing of a still picture or a moving picture with high performance using wavelet transform and inverse wavelet transform.
Thus, in the present invention, in dividing data of a finite length into a plurality of frequency bands so as to carry out data processing, it is discriminated whether an extrapolation processing method for convolution at both ends of data with respect to band division processing and corresponding band synthesis processing is appropriate or not, and band division processing is carried out using extrapolation processing discriminated as being appropriate.
Specifically, a data processing method according to the present invention is adapted for dividing data of a finite length into a plurality of frequency bands so as to carry out data processing, and includes the steps of discriminating whether an extrapolation processing method for convolution at both ends of data with respect to band division processing and corresponding band synthesis processing is appropriate or not, and carrying out band division processing using extrapolation processing discriminated as being appropriate.
A data processing device according to the present invention is adapted for dividing data of a finite length into a plurality of frequency bands so as to carry out data processing, and includes extrapolation processing discriminating means for discriminating whether an extrapolation processing method for convolution at both ends of data with respect to band division processing and corresponding band synthesis processing is appropriate or not, and band division processing means for using extrapolation processing discriminated as being appropriate.
In the data processing method and the data processing device according to the present invention, for example, subband transform or wavelet transform is carried out by the band division processing.
Also, in the data processing method and the data processing device according to the present invention, for example, it is discriminated whether an extrapolation processing method is appropriate or not with respect to characteristics of a filter used for wavelet transform and inverse wavelet transform and the length of a data array on which down-sampling and wavelet transform are to be carried out.
Also, in the data processing method and the data processing device according to the present invention, for example, if an extrapolation processing method satisfies complete reconstruction conditions within a range of precision of a filter used for wavelet transform and inverse wavelet transform, the extrapolation processing method is regarded as being appropriate.
Also, in the data processing method and the data processing device according to the present invention, for example, an extrapolation processing method used by an analysis filter for wavelet transform is provided, and if the provided extrapolation processing method is inappropriate with respect to characteristics of the filter used and the length of a data array on which down-sampling and wavelet transform are to be carried out, the inappropriateness is notified of so as to suspend subsequent processing.
Also, in the data processing method and the data processing device according to the present invention, for example, if an extrapolation processing method provided from outside is inappropriate with respect to characteristics of a filter used for wavelet transform and inverse wavelet transform and the length of a data array on which down-sampling and wavelet transform are to be carried out, a preset extrapolation processing method is used for carrying out wavelet transform.
Also, in the data processing method and the data processing device according to the present invention, for example, wavelet transform is carried out by using, as an extrapolation processing method, any one of a zero-shift even function loopback method for loopback at a sample position at an end of a data array as the center of symmetry, a zero-shift odd function loopback method for loopback with an inverted sign at a sample position at an end of a data array as the center of symmetry, a half-shift even function loopback method for loopback on the outside for half-sample from an end sample position as the center of symmetry, and a half-shift odd function loopback method for loopback with an inverted sign on the outside for half-sample from an end sample position as the center of symmetry.
Also, in the data processing method and the data processing device according to the present invention, for example, if any one of the four loopback methods is used as an extrapolation processing method, and if symmetry at the end position of the data array is retained even after down-sampling in wavelet transform, the loopback method is regarded as being appropriate.
Also, in the data processing method and the data processing device according to the present invention, for example, if extrapolation data is insufficient by one loopback because the length of a filter used is great in comparison with the length of a data array, extrapolation processing is carried out so that a data array including extrapolation data with respect to a leading end position and a trailing end position of the data array has a periodicity with a basic cycle thereof being not more than twice the data length.
Also, in the data processing method and the data processing device according to the present invention, for example, in analysis filtering processing, from the number of taps of an analysis filter used for wavelet transform and the length of a data array, if extrapolation data is insufficient by one loopback because the length of the filter used is great in comparison with the length of the data array, and if a data array including the extrapolation data after down-sampling in wavelet transform has a periodicity with a cycle thereof being equal to a value found by dividing a basic cycle thereof by a sampling interval of down-sampling, a combination of loopback methods used at a leading end position and a trailing end position is regarded as being appropriate.
Also, in the data processing method and the data processing device according to the present invention, for example, extrapolation processing methods with respect to a leading end position and a trailing end position of a data array are selected from the four loopback methods, and whether the combination is appropriate or not is discriminated sequentially with respect to all possible combinations.
Also, in the data processing method and the data processing device according to the present invention, for example, if there exists no appropriate combination of loopback methods with respect to a leading end position and a trailing end position of a data array, with respect to the characteristics of the filter used for wavelet transform and the length of the data array on which down-sampling and wavelet transform are to be carried out, the nonexistence of appropriate combination is notified of so as to suspend subsequent processing.
Also, in the data processing method and the data processing device according to the present invention, for example, if there exists no appropriate combination of loopback methods with respect to a leading end position and a trailing end position of a data array, with respect to the characteristics of the filter used for wavelet transform and the length of the data array on which down-sampling and wavelet transform are to be carried out, a preset combination of loopback methods is used for carrying out wavelet transform.
Also, in the data processing method and the data processing device according to the present invention, for example, with respect to each of a leading end position and a trailing end position of a data array, any one of a zero-shift even function loopback method for loopback at a sample position at an end of a data array as the center of symmetry and a half-shift even function loopback method for loopback on the outside for half-sample from an end sample position as the center of symmetry is selected, and whether a combination of the selected loopback methods is appropriate or not is discriminated from the analysis filter used for wavelet transform and the length of the data array on which down-sampling and wavelet transform are to be carried out.
Also, in the data processing method and the data processing device according to the present invention, for example, with respect to a leading end position and a trailing end position of a data array, the phase shift quantity of a symmetrical center position due to a loopback method, filtering processing by an analysis filter and down-sampling is calculated. If the value of the trailing end position is 0 or xc2xd of a sampling interval used for down-sampling, and if the value of the leading end position is 0 or xc2xd of the sampling interval with a negative sign, the loopback method used is regarded as being appropriate, and a loopback method used for corresponding inverse wavelet transform is determined from the phase shift quantity, with respect to a combination of loopbacks at both ends discriminated as being appropriate.
Also, in the data processing method and the data processing device according to the present invention, for example, with respect to a leading end position and a trailing end position of a data array, the phase shift quantity of a symmetrical center position due to a loopback method, filtering processing by an analysis filter and down-sampling is calculated. If absolute values of the phase shift quantity at both ends are values integer times a sampling interval used for down-sampling or values odd-number times of xc2xd of the sampling interval, a value integer times the sampling interval is added to the value of the phase shift quantity, and an offset quantity necessary for obtaining a value not less than xe2x88x92xc2xd and not more than 0 with respect to the leading end position and an offset quantity necessary for obtaining a value not less than 0 and not more than xc2xd with respect to the trailing end position are calculated. If the offset quantities with respect to the leading end position and the trailing end position coincide with each other, the offset value is transmitted to carry out phase shift of the offset quantity on a stage prior to down-sampling in wavelet transform. If the calculated offset quantities with respect to the leading end position and the trailing end position do not coincide with each other, the combination of selected loopback methods is discriminated as being inappropriate.
Also, in the data processing method and the data processing device according to the present invention, for example, from the number of taps of an analysis filter used for wavelet transform and the length of a data array, if extrapolation data is insufficient by one loopback because the length of the filter used is great in comparison with the length of the data array in analysis filtering processing or synthesis filtering processing, and only if a residue obtained by dividing a basic cycle by a sampling interval is 0, the combination of selected loopback methods is regarded as being appropriate, and a loopback method used for corresponding inverse wavelet transform is determined from the phase shift quantity.
Also, in the data processing method and the data processing device according to the present invention, for example, if a combination of loopback methods used at a leading end position and a trailing end position of a data array is discriminated as being appropriate, as a loopback method used for corresponding inverse wavelet transform, the zero-shift even function loopback method is employed when the value of the phase shift quantity is 0 while the analysis filter has an even function. The zero-shift odd function loopback method is employed when the value of the phase shift quantity is 0 while the analysis filter has an odd function. The half-shift even function loopback method is employed when the value of the phase shift quantity is a value xc2xd of the sampling interval with respect to the trailing end position of the data array and a value xc2xd of the sampling interval with a negative sign with respect to the leading end position while the analysis filter has an even function. The half-shift odd function loopback method is employed when the value of the phase shift quantity is a value xc2xd of the sampling interval with respect to the trailing end position and a value xc2xd of the sampling interval with a negative sign with respect to the leading end position while the analysis filter has an odd function.
Also, in the data processing method and the data processing device according to the present invention, for example, a signal obtained by dividing data of a finite length into a plurality of frequency bands is quantized and coded by using extrapolation processing discriminated as being appropriate.
Further, in the data processing method and the data processing device according to the present invention, for example, band synthesis processing is carried out using extrapolation processing discriminated as being appropriate with respect to a signal obtained by dividing data of a finite length into a plurality of frequency bands.
In addition, in the present invention, an appropriate extrapolation processing method is received with respect to data of a finite length divided into a plurality of frequency bands, and band synthesis processing is carried out by using the received extrapolation processing.
Specifically, a data processing method according to the present invention includes the steps of receiving an appropriate extrapolation method with respect to data of a finite length divided into a plurality of frequency bands, and carrying out band synthesis processing by using the received extrapolation processing.
A data processing device according to the present invention is adapted for synthesizing data of a finite length divided into a plurality of frequency bands, and includes extrapolation processing receiving means for receiving an appropriate extrapolation method, and band synthesis processing means for carrying out band synthesis processing by using the extrapolation processing received by the extrapolation processing receiving means.
Also, in the data processing method and the data processing device according to the present invention, for example, band synthesis of data of a finite length divided into frequency bands by wavelet transform is carried out using the received extrapolation processing, thereby carrying out inverse wavelet transform.
Also, in the data processing method and the data processing device according to the present invention, for example, coding of data of a finite length coded by dividing into a plurality of frequency bands is decoded, so as to carry out band synthesis processing using the received extrapolation processing.